Skip to content

Testing framework#1902

Merged
vanosg merged 12 commits into
developfrom
testing-framework
May 16, 2026
Merged

Testing framework#1902
vanosg merged 12 commits into
developfrom
testing-framework

Conversation

@thommey
Copy link
Copy Markdown
Member

@thommey thommey commented May 2, 2026

One-line summary: AI written pytest based tests for Eggdrop. No changes to Eggdrop source code. uv is recommended but not required to run them.

Additional description (if needed): In the future we can add Tcl commands to introspect C state, guarded by #ifdef TESTING only. See testing/README.md for a longer description and architectural details.

It pretty much does what the eggdrop-test repository did with a few more modern changes:

  • a socket to execute arbitrary Tcl commands
  • run with -nt to have owner partyline access
  • jinja2 templates for config/userfile
  • temporary directory per test run (easy inspection on failure)
  • simulate ircd that eggdrop connects to
  • flexible verification with the ircd reading lines or Tcl commands or partyline commands or logs

Test cases demonstrating functionality (if applicable):

make distclean && ./configure --enable-coverage && make config debug && cd tests && uv run pytest

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8125556c53

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment on lines +43 to +44
if [ -s .gitdiff ]; then
exit 0; # disabled
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Fail makedepend check when generated files change

The makedepend-check job now returns success even when misc/makedepend modifies tracked files, because the non-empty diff branch exits with 0. In CI this silently disables the regression guard that previously enforced committed dependency updates, so PRs can merge with stale generated dependency data and only fail later in downstream builds or packaging flows.

Useful? React with 👍 / 👎.

@thommey thommey force-pushed the testing-framework branch 5 times, most recently from d7581eb to 0cc25ce Compare May 5, 2026 17:05
@thommey thommey force-pushed the testing-framework branch from 207d34f to 06ded0f Compare May 16, 2026 18:19
thommey added 9 commits May 16, 2026 20:20
Only some of them, rest is documented in README.md
Not sure why tests are significantly slower on Github (10m+ instead of 40s),
presumably this issue: astral-sh/uv#9765

Using system python significantly speeds it up
This perfectly finds the regression caused by 2fea6c4
which intended to fix issues with the extra ":".

Broken: 1.10.1
Valid: 1.10.0 and latest HEAD because of gotmode() using parse_irc now
@thommey thommey force-pushed the testing-framework branch from 06ded0f to 1e0fe38 Compare May 16, 2026 18:21
@vanosg vanosg added this to the v1.10.2 milestone May 16, 2026
@vanosg vanosg merged commit e3aba46 into develop May 16, 2026
25 of 26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants